package cn.broadsense.thrid.param;

import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.List;

/**
 * 告警通知
 *
 * @author pengxin
 * @date 2022-10-21 14:37
 */
@NoArgsConstructor
@Data
public class AlarmNoticeParma implements Serializable {
    private static final long serialVersionUID = -8083657278524781143L;

    private String alarmAction;
    private String alarmName;
    private Long alarmTime;
    private String alarmType;
    private String channelCode;
    private String channelId;
    private String classType;
    private String deviceCode;
    private String deviceId;
    private String event;
    private List<ImgListResult> imgList;
    private InfoResult info;
    private String paasId;
    private String recordId;
    private String saasExtParam;
    private String taskId;
    private String uid;
    private String userChannelCode;
    private String userDeviceCode;

    @NoArgsConstructor
    @Data
    public static class InfoResult {
        private String objects;
        private String uniformStyle;
        private String name;
        private String action;
        private String featureEnable;
        private String plateNum;
        private String detectRegion;
    }

    @NoArgsConstructor
    @Data
    public static class ImgListResult implements Serializable {
        private static final long serialVersionUID = 4906039174862702775L;
        private String imgUrl;
        private Integer imgWidth;
        private Integer imgSize;
        private List<ObjectRectResult> objectRect;
        private Integer imgHeight;
        private Long capTime;
        private Integer imgType;

        @NoArgsConstructor
        @Data
        public static class ObjectRectResult implements Serializable {
            private static final long serialVersionUID = 2882447101469228585L;
            private Integer objBottom;
            private Integer objLeft;
            private Integer objRight;
            private Integer objTop;
        }
    }
}
